package com.mindao.app.site.service;

import java.util.List;

 



import com.mindao.app.common.spring.page.Pagination;
import com.mindao.app.site.exception.EnrollException;
import com.mindao.app.site.model.Event;
import com.mindao.app.site.model.EventEnroll;

/**
/* 版权所有： 广州敏道科技有限公司
/*
/* 功能描述：活动报名接口
/*
/* 创 建 人：李国才
/* 创建时间：2016年6月16日 下午9:25:00 	
 **/
public interface EventService {
	/**
	 * 根据当前用户或微信openid得到报名情况
	 * @param currentUserId
	 * @param openid
	 * @return
	 */
	public EventEnroll getEventEnroll(Long eventId,Long currentUserId,String openid);
	
	/**
	 * 创建报名记录
	 * @param event
	 * @param currentUserId
	 * @param openid
	 * @param nickName
	 * @param qq
	 * @return
	 * @throws EnrollException
	 */
	public EventEnroll createEventEnroll(Event evnet,String enrollUuid,Long currentUserId,String openid,String nickName,String userName,String qq) throws EnrollException;
	/**
	 * 根据当前进行的报名活动
	 * @param currentUserId
	 * @param openid
	 * @return
	 */
	public Event getCurrentEvent();
			
	/**
	 * 根据活动报名情况列表
	 * @param currentUserId
	 * @param openid
	 * @return
	 */
	public Pagination getEventEnrolls(Long eventId, Pagination page) ;
	/**
	 * 判断是否允许报名
	 * @param event
	 * @return
	 */
	public boolean getEnrollable(Event event);
}
